An increasing number and variety of devices are being connected to computer networks. In addition to personal computers and server computer systems, non-traditional computing devices such as automobiles, wristwatches, home appliances, home-automation devices, sensors, health monitors, biometric sensors, and wearable devices are also being connected to computer networks. Some of the devices being connected to the computer networks are small, low-cost, or have limited battery power and, therefore, may have limited processing power and/or memory. The lack of processing power and/or memory makes it difficult to implement cryptographically protected protocols that utilize substantial memory and processing power.